home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-01-29 | 11.9 KB | 401 lines | [TEXT/MPS ] |
- ; Version: 1.00
- ; Created: Friday, October 20, 1989 at 9:35:53 PM
- ;
- ; PPCToolbox.a
- ; Assembler Interface to the Macintosh Libraries
- ;
- ; Copyright Apple Computer, Inc. 1989-1991
- ; All rights reserved
- ;
-
- IF &TYPE('__IncludingPPCToolbox__') = 'UNDEFINED' THEN
- __IncludingPPCToolbox__ SET 1
-
- IF &TYPE('__IncludingTraps__') = 'UNDEFINED' THEN ; get defintion of _Pack9
- INCLUDE 'Traps.a'
- ENDIF
-
- ; PPCCommand Values
-
- ; Trap Selector D0 Must be set to one of the following, csCode will contain this value
- ; when the call completes.
-
- ppcInitCmd EQU 0
- ppcOpenCmd EQU 1
- ppcStartCmd EQU 2
- ppcInformCmd EQU 3
- ppcAcceptCmd EQU 4
- ppcRejectCmd EQU 5
- ppcWriteCmd EQU 6
- ppcReadCmd EQU 7
- ppcEndCmd EQU 8
- ppcCloseCmd EQU 9
- IPCListPortsCmd EQU 10
- ppcKillCmd EQU 11
-
- DeleteUserCmd EQU 12
- GetDefaultUserCmd EQU 13
- StartSecureCmd EQU 14
-
- ; Valid PPCServiceTypes
- ppcServiceRealTime EQU 1
- ppcServiceStoreAndForward EQU 2
-
-
- ; Valid PPCLocationKinds = Integer;
- ppcNoLocation EQU 0 ; There is no PPCLocName
- ppcNBPLocation EQU 1 ; Use AppleTalk NBP
- ppcNBPTypeLocation EQU 2 ; Use just the NBP type, fill in rest with default
-
- ; Valid PPCPortKinds = Integer;
- ppcByCreatorAndType EQU 1 ; Port type is specified as colloquial Mac creator and type
- ppcByString EQU 2 ; Port type is in pascal string format
-
- ; Valid PPCSessionOrigins = SignedByte; { requestType returned in PPCInform }
- ppcLocalOrigin EQU 1 ; session originated from this machine
- ppcRemoteOrigin EQU 2 ; session originated from remote machine
-
- PPCPortRec RECORD 0 ; TYPE Comment
- nameScript DS.W 1 ; ScriptCode; script of name
- name DS.B 34 ; Str32; name of port as seen in browser
- portKindSelector DS.W 1 ; PPCPortKinds; which variant
- portTypeStr DS.B 34 ; Str32;
- ORG portTypeStr
- portCreator DS.L 1 ; OSType;
- portType DS.L 1 ; OSType;
- ENDR
-
- LocationNameRec RECORD 0 ;
- locationKindSelector DS.W 1 ; PPCLocationKind; which variant
- nbpEntity DS.B 100 ; NBP name entity
- ORG nbpEntity ;
- nbpType DS.B 34 ; Str32; just the NBP type string, for PPCOpen
- ENDR
-
-
- PortInfoRec RECORD 0 ;
- filler1 DS.B 1 ; SignedByte;
- authRequired DS.B 1 ; Boolean;
- name DS PPCPortRec ;
- ENDR
-
-
- PPCOpenPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- portRefNum DS.W 1 ; PPCPortRefNum Port Reference
- filler1 DS.L 1 ; LONGINT ignored
- serviceType DS.B 1 ; PPCServiceType Bit field describing the requested port service
- resFlag DS.B 1 ; BYTE Must be set to 0
- portName DS.L 1 ; PPCPortPtr PortName for PPC
- locationName DS.L 1 ; LocationNamePtr If NBP Registration is required
- networkVisible DS.B 1 ; BOOLEAN make this network visible on network
- nbpRegistered DS.B 1 ; BOOLEAN The given location name was registered on the network
- ENDR
-
-
- PPCInformPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- portRefNum DS.W 1 ; PPCPortRefNum Port Identifier
- sessRefNum DS.L 1 ; PPCSessRefNum Session Reference
- serviceType DS.B 1 ; PPCServiceType Status Flags for type of session, local, remote
- autoAccept DS.B 1 ; Boolean if true session will be accepted automatically
- portName DS.L 1 ; PPCPortPtr Buffer for Source PPCPortRec
- locationName DS.L 1 ; LocationNamePtr Buffer for Source LocationNameRec
- userName DS.L 1 ; StringPtr Buffer for Soure user's name trying to link.
- userData DS.L 1 ; LongInt value included in PPCStart's userData
- requestType DS.B 1 ; PPCSessionOrigin Local or Network
- ENDR
-
-
- PPCStartPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- portRefNum: DS.W 1 ; PPCPortRefNum; Port Identifier
- sessRefNum: DS.L 1 ; PPCSessRefNum; Session Reference
- serviceType: DS.B 1 ; PPCServiceType Actual service method (realTime)
- resFlag: DS.B 1 ; SignedByte Must be set to 0
- portName: DS.L 1 ; PPCPortPtr Destination portName
- locationName: DS.L 1 ; LocationNamePtr NBP or NAS style service location name
- rejectInfo: DS.L 1 ; LongInt reason for rejecting the session request
- userData: DS.L 1 ; LongInt Copied to destination PPCInform parameter block
- userRefNum: DS.L 1 ; LongInt userRefNum (obtained during login process)
- ENDR
-
-
- PPCAcceptPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- filler1 DS.W 1 ; Integer
- sessRefNum DS.L 1 ; PPCSessRefNum Session Reference
- ENDR
-
-
- PPCRejectPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- filler1 DS.W 1 ; Integer
- sessRefNum DS.L 1 ; PPCSessRefNum Session Reference
- filler2 DS.W 1 ; Integer
- filler3 DS.L 1 ; LongInt
- filler4 DS.L 1 ; LongInt
- rejectInfo DS.L 1 ; LongInt reason for rejecting the session request
- ENDR
-
-
- PPCWritePBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- filler1 DS.W 1 ; Integer
- sessRefNum DS.L 1 ; PPCSessRefNum Session Reference
- bufferLength DS.L 1 ; Size Length of the message buffer
- actualLength DS.L 1 ; Size Actual Length Written
- bufferPtr DS.L 1 ; Ptr Pointer to message buffer
- more DS.B 1 ; Boolean if more data in this block will be written
- filler2 DS.B 1 ; SignedByte;
- userData DS.L 1 ; LongInt Message block userData Uninterpreted by PPC
- blockCreator DS.L 1 ; OSType Message block creator Uninterpreted by PPC
- blockType DS.L 1 ; OSType Message block type Uninterpreted by PPC
- ENDR
-
-
- PPCReadPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- filler1 DS.W 1 ; Integer
- sessRefNum DS.L 1 ; PPCSessRefNum Session Reference
- bufferLength DS.L 1 ; Size Length of the message buffer
- actualLength DS.L 1 ; Size Actual length read
- bufferPtr DS.L 1 ; Ptr Pointer to message buffer
- more DS.B 1 ; Boolean if true more data in this block to be read
- filler2 DS.B 1 ; SignedByte
- userData DS.L 1 ; LongInt Message block userData Uninterpreted by PPC
- blockCreator DS.L 1 ; OSType Message block creator Uninterpreted by PPC
- blockType DS.L 1 ; OSType Message block type Uninterpreted by PPC
- ENDR
-
-
- PPCEndPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- filler1 DS.W 1 ; Integer
- sessRefNum DS.L 1 ; PPCSessRefNum Session Reference
- ENDR
-
-
- PPCClosePBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- portRefNum DS.W 1 ; PPCPortRefNum Port Identifier
- ENDR
-
-
- IPCListPortsPBRec RECORD 0 ; TYPE Comment
- qLink DS.L 1 ; Ptr reserved
- csCode DS.W 1 ; INTEGER reserved
- intUse DS.W 1 ; INTEGER reserved
- intUsePtr DS.L 1 ; Ptr reserved
- ioCompletion DS.L 1 ; PPCComProcPtr Completion routine.
- ioResult DS.W 1 ; OSErr Result of operation.
- reserved DS.L 5 ; LONGINT reserved
- filler1 DS.W 1 ; Integer
- startIndex DS.W 1 ; Integer Start Index
- requestCount DS.W 1 ; Integer Number of entries to be returned
- actualCount DS.W 1 ; Integer Actual Number of entries to be returned
- portName DS.L 1 ; PPCPortPtr PortName Match
- locationName DS.L 1 ; LocationNamePtr NBP or NAS type name to locate the Port Location
- bufferPtr DS.L 1 ; PortInfoArrayPtr Pointer to a buffer requestCount*sizeof(PortInfo) bytes big
- ENDR
-
- DeleteUserParams RECORD 0 ;
- userRefNum DS.L 1 ; LONGINT
- ENDR
-
- StartSecureParams RECORD 0 ; TYPE
- prompt DS.L 1 ; StringPtr
- guestSelected DS.L 1 ; pointer to a Boolean
- allowGuest DS.B 1 ; Boolean
- reserved1 DS.B 1 ; Byte
- useDefault DS.B 1 ; Boolean
- reserved2 DS.B 1 ; Byte
- userName DS.L 1 ; StringPtr
- startPb DS.L 1 ; PPCStartPBPtr
- ENDR
-
- GetDefaultUserParams RECORD 0 ;
- userName DS.L 1 ; Pointer to Str32.
- userRef DS.L 1 ; Pointer to LONGINT.
- ENDR
-
- PPCParamBlockRec RECORD 0 ;
- openParam DS PPCOpenPBRec
- ORG 0
- informParam DS PPCInformPBRec
- ORG 0
- startParam DS PPCStartPBRec
- ORG 0
- acceptParam DS PPCAcceptPBRec
- ORG 0
- rejectParam DS PPCRejectPBRec
- ORG 0
- writeParam DS PPCWritePBRec
- ORG 0
- readParam DS PPCReadPBRec
- ORG 0
- endParam DS PPCEndPBRec
- ORG 0
- closeParam DS PPCClosePBRec
- ORG 0
- listPortsParam DS IPCListPortsPBRec
- ENDR
-
-
-
- Macro
- _PPCInit
- MOVEQ #ppcInitCmd,D0
- DC.W $A0DD
- Endm
-
- Macro
- _DoPPCTrap
- IF &SYSLIST[1] = 'SYNC' THEN
- DC.W $A0DD
- ELSE
- DC.W $A4DD
- ENDIF
- Endm
-
- Macro
- _PPCMacro
- MOVEQ &SYSLIST[1],D0
- _DoPPCTrap &SYSLIST[2]
- Endm
-
- Macro
- _PPCOpen
- _PPCMacro #ppcOpenCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCInform
- _PPCMacro #ppcInformCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCStart
- _PPCMacro #ppcStartCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCAccept
- _PPCMacro #ppcAcceptCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCReject
- _PPCMacro #ppcRejectCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCWrite
- _PPCMacro #ppcWriteCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCRead
- _PPCMacro #ppcReadCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCClose
- _PPCMacro #ppcCloseCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCEnd
- _PPCMacro #ppcEndCmd,&SYSLIST[2]
- Endm
-
- Macro
- _IPCListPorts
- _PPCMacro #IPCListPortsCmd,&SYSLIST[2]
- Endm
-
- Macro
- _PPCKill
- Moveq #ppcKillCmd,D0
- DC.W $A0DD
- Endm
-
- Macro
- _DeleteUserIdentity
- Moveq #DeleteUserCmd,D0
- DC.W $A0DD
- Endm
-
- Macro
- _GetDefaultUser
- Moveq #GetDefaultUserCmd,D0
- DC.W $A0DD
- Endm
-
- Macro
- _StartSecureSession
- Moveq #StartSecureCmd,D0
- DC.W $A0DD
- Endm
-
- Macro
- _PPCBrowser
- MOVE.W #$0D00,D0
- _Pack9
- Endm
-
- ENDIF ;...already included